#pragma once
#include <unistd.h>

#include <unistd.h>
#include <fcntl.h>
#include <string>
#include "Error.hpp"

class Util
{
public:
    // 设置文件描述符为非阻塞
    static void SetNoBlock(int fd)
    {
        // int fcntl(int fd, int cmd, ... /* arg */ );
        int old_fd = fcntl(fd,F_GETFL);
        if(old_fd < 0)
        {
            perror("fcntl failed...\n");
            exit(FCNTL_ERR);
        }
        fcntl(fd,F_SETFL,old_fd | O_NONBLOCK);
    }
    static int toInt(std::string &str)
    {
        return atoi(str.c_str());
    }
};
